import java.util.ArrayList;
import java.util.List;

import nfa_generator.*;
import DFA.*;
import ast_generator.*;



public class Scanner {
	
	public static void main(String[] args) {
		
		
		/* Testing nfa methods */
		/*
		// $LETTER*|$LETTER$DIGIT
		List<ASTTree> astList = new ArrayList<ASTTree>();
		ASTTree astTree = new ASTTree();
		astTree.setTokenType("$WORD");
		ASTNode root = new ASTNode();
		root.setValue("|");
		root.setOperation(true);
		astTree.setRoot(root);
		
		ASTNode temp = new ASTNode("*", true);
		temp.setLeft(new ASTNode("$LETTER", false));
		
		ASTNode temp2 = new ASTNode(" ", true);
		temp2.setLeft(new ASTNode("$LETTER", false));
		temp2.setRight(new ASTNode("$DIGIT", false));
		
		root.setLeft(temp);
		root.setRight(temp2);
		astList.add(astTree);
		
		NFAGenerator nfaGen = new NFAGenerator(astList);
		NFAGraph nfaGraph = nfaGen.generateNFA();
		
		for(NFANode node : nfaGraph.getStates()) {
			System.out.println(node.toString());
		}
		//Confirmed to be correct
		*/
	}
}
